package org.example;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class test03 {

    public static void main(String[] args) {

        //Hashset
        Set<String> codes = new HashSet<>();

        //添加单词 返回值告之是否添加成功 如果失败意味着set已存在该元素
        codes.add("apple");
        codes.add("english");
        codes.add("math");
        codes.add("hello");

        System.out.println(codes);

        //删除元素
        codes.remove("ma"); //不成功
        codes.remove(1);//不成功
        codes.remove("math");//成功
        System.out.println(codes);

        //判断是否存在
        System.out.println(codes.contains("math"));//flash
        System.out.println(codes.contains("hello"));//true

        //获取集合大小
        System.out.println(codes.size());//3

        //遍历集合
        Iterator<String> iterator = codes.iterator();
        while (iterator.hasNext()) {
            String codess = iterator.next();
            System.out.println(codess);
        }

        //判断是否为空
        System.out.println(codes.isEmpty());

        //获取 codes 对象的哈希码
        System.out.println(codes.hashCode());

        //linkedhashSet

        //treeSet

        //1.hashSet和linkedHashSet 如何保证元素是唯一的
        //2.treeSet 如何保证元素是唯一的

    }
}
